A QR (“Quick Response”) code is a machine-readable optical label that typically contains (or is linked to) information about the item to which it is attached. It differs from a conventional UPC barcode label in that the encoded information is presented in two dimensions using a predetermined encoding mode such as numeric, alphanumeric, binary, or character (eg kanji) and an associated error correcting code to store and reconstruct the data, and offers more reliable readability and greater storage capacity. Applications include product tracking, item identification, time tracking, document management, and general marketing.
A QR code consists of a two dimensional array of binary valued cells (typically either black or white square dots arranged in a square grid), which can be captured by an imaging device (such as a digital camera in a smart phone) and processed to reconstruct an approximation of the original two dimensional pattern of dots. Some of the cells have fixed values arranged in a fixed pattern and define the size and orientation of the grid, and other cells represent bits of encoded binary data arranged in rows and columns of the square grid. The associated error correcting code is then used to extract the original data from the horizontal and vertical components of the reconstructed square grid.
The amount of data depends on the size (number of discrete data points) of the label and the complexity (robustness) of the associated error correcting code:                Level L—up to 7% damage        Level M—up to 15% damage        Level Q—up to 25% damage        Level H—up to 30% damage        
FIG. 1 specifies the data that may be encoded with a 40-L (maximum capacity) QR Code.
Unlike the older, one-dimensional barcodes that were designed to be traversed by a narrow beam of light, a QR code is captured by a 2-dimensional digital image sensor and the resultant digital image data then analyzed by a programmed processor. The processor locates the three distinctive squares at the corners of the QR code image, using a smaller square (or multiple squares) near the fourth corner to normalize the image for size, orientation, and angle of viewing. The small dots throughout the QR code are then converted to binary numbers and validated with an error-correcting code.
Although initially designed for tracking parts in vehicle manufacturing, QR codes now are used in a much broader context, including both commercial tracking applications and convenience-oriented applications aimed at mobile-phone users (termed mobile tagging). QR codes may be used to display text to the user, to add a vCard contact to the user's device, to open a Uniform Resource Identifier (URI), or to compose an e-mail or text message. Various QR code apps are available that can be used for publishing (generating and printing) a new QR code and for using (capturing and interpreting) a previously published QR Code. Japan's NTT DoCoMo has established de facto standards for the encoding of URIs, contact information, and several other data types. The open-source “ZXing” project maintains a list of QR code data types.
QR codes have been used over a wide range of applications, including commercial tracking, entertainment and transport ticketing, product/loyalty marketing and in-store product labeling. Many of these applications target mobile-phone users (via mobile tagging). Users may receive text, add a vCard contact to their device, open a URI, or compose an e-mail or text message after scanning QR codes. They can generate and print their own QR codes for others to scan and use by visiting one of several pay or free QR code-generating sites or apps. Recruiters have placed QR codes in job advertisements, while applicants have placed their own QR code in their CVs and visiting cards. QR codes can also be used in accessing personal information for use by organizations.
Typically, a smartphone having a built in digital camera and a built in QR scanning app functions as a QR code scanner and extracts (and optionally displays) the encoded digital data in its original format (numeric, alphanumeric, binary, or character). A special user app (typically downloaded from or otherwise in communication with the same website that created and published that particular QR code) converts the decoded digital data into some useful digital format (such as a standard URL for a website), thereby obviating the need for a user to type the encoded data into a web browser or other user app. Such a QR code representation of a brand's URL has become a focus of advertising strategy, since it provides a way to access a brand's website more quickly than by manually entering the individual characters comprising the URL and any associated search parameters.
QR codes storing addresses and URLs may appear in magazines, on signs, on buses, on business cards, or on almost any object about which users might want information. Users with a camera phone equipped with the correct reader application can scan the image of the QR code to display text, contact information, connect to a wireless network, or open a web page in the phone's browser. This act of linking from physical world objects is termed hardlinking or object hyperlinking. QR codes also may be linked to a location to track where a code has been scanned. Either the application that scans the QR code retrieves the geo information by using GPS and cell tower triangulation (aGPS) or the URL data encoded in the QR code itself is associated with a location.
QR codes can be used with various mobile device operating systems to support URL redirection, which allows the QR codes to input metadata to existing applications on the device. Many paid or free apps are available with the ability to scan the codes, extract the embedded metadata, and hard-link to an external URL.
QR codes can be also used to establish a secure log in to an associated device: a QR Code is shown on the login page on a computer screen, and when a registered user scans that code with a verified smartphone, that user will automatically be logged in on the computer. Authentication is performed by the user's smartphone which uses the information in QR code to contact the responsible authentication server and execute the appropriate authentication protocol.
The amount of data that can be stored in the QR code symbol depends on the datatype (mode, or input character set), version (1 through 40, indicating the overall dimensions of the symbol), and error correction level (Low=7%, Medium=15%, Quality=25%, or High=30%). The maximum storage capacities occur for 40-L symbols (version 40, error correction level L), as set forth in FIG. 1.
US Patent Publication 2014/0032285 describes a system in which scanning a QR code generates an email address to a payment gateway. US Patent Publication 2014/0117087, describes a system for using QR codes in a dating service.